idea操作记录
快捷键
- 快速生成全局变量 在
new
的变量后面加上.field
ctrl + shift + -
全部折叠+
反之ctrl + shift + T
生成try-catch
ctrl + shift + u
显示数据库的结构图ctrl + F12
显示类方法
创建模板文件
打开 Editor --> File and Code Templates
切换到 File
选项卡。
parse 指令与包含一起使用。
要扩展为格式 $ {<variable_name>}
的相应值的预定义变量。
可用的预定义文件模板变量是:
${PACKAGE_NAME}
- 将创建新类或接口的目标包的名称。${PROJECT_NAME}
- 当前项目的名称。${FILE_NAME}
- 将要创建的 PHP 文件的名称。${NAME}
- 在创建文件的过程中,在 "新建文件" 对话框中指定的新文件的名称。${USER}
- 当前用户的登录名。${DATE}
- 当前系统日期。${TIME}
- 当前系统时间。${YEAR}
- 本年度。${MONTH}
- 当月。${DAY}
- 当月的当前日期。${HOUR}
- 当前时间。${MINUTE}
- 当前分钟。${PRODUCT_NAME}
- 将在其中创建文件的 IDE 的名称。${MONTH_NAME_SHORT}
- 月份名称的前3个字母。示例:1月,2月等。${MONTH_NAME_FULL}
- 一个月的全名。示例:1月,2月等。
LiveTemplate
预定义模板变量
IntelliJ IDEA支持以下无法修改的预定义实时模板变量:
$END$
—应用模板后的插入符位置。
$SELECTION$
—用户在调用模板之前选择的文本。此变量仅在 环绕声模板中使用。
$SELSTART$
-将选择的文本块的起始位置 之后 在应用模板。
$SELEND$
-将所选择的文本块的结束位置 后 在应用模板。
自带的函数
methodParameters()
:返回模板在其中扩展的方法的参数列表。
methodReturnType()
:返回由当前方法扩展模板所返回的值的类型。
使用例子
注意:下面创建的这些模板,要在函数里面用,因为这些函数是有作用域的,所以需要在函数里创建了再粘贴到函数外面...
例如生成一个方法注释,如下($return$
和 $params$
只是占位符)
/**
* <b>
*
* </b>
* <br/>
*
$return$
$params$
* @exception null : null
*/
这里使用 LiveTemplate 提供的一个函数 methodParameters()
获取方法的参数,因为这个返回值是一串字符串,所以需要再编写一段脚本对其进行解析
# 返回值如下
[a, b, d]
编写一个脚本解析这串字符串
if ("${_1}".length() == 2) {
return '';
} else {
def result = '';
def params = "${_1}".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();
for (i = 0; i < params.size(); i++) {
if (i < (params.size() - 1)) {
result += ' * @param ' + params[i] + ' : ' + '\\n'
} else {
result += ' * @param ' + params[i] + ' : '
}
};
return result;
}
// 把 methodParameters() 的返回值交给这个函数解析(通过 ${_1} 获取到)
groovyScript("if(\"${_1}\".length() == 2) {return '';} else {def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();for(i = 0; i < params.size(); i++) {if(i<(params.size()-1)){result+=' * @param ' + params[i] + ' : ' + '\\n'}else{result+=' * @param ' + params[i] + ' : '}}; return result;}", methodParameters());
同理通过 methodReturnType()
获取返回值类型
def returnType = ${_1};
def result = ' * @return : ' + returnType;
return result;
// 把 methodReturnType() 的返回值交给这个函数解析
groovyScript( "def returnType = \"${_1}\"; def result = ' * @return : ' + returnType; return result;", methodReturnType() );
PostfixCompletion
参考资料 IntelliJ IDEA自定义Postfix Completion
Postfix Completion 就是围绕着一个关键字(就是点后面的),然后将关键字替换成点前面的变量,来简化书写,达到四两拨千斤的效果。
例如 .sout
生成
// 输入
"hello".sout
// 生成
System.out.println("hello");
用法和上面的 LiveTemplate
有点像
logger.info($EXPR$);
数据导出与导入
参考资料 DataGrip 数据导出与导入 因为 IDEA 内置了 DataGrip 的功能,所以这里也顺便记录 DataGrip 的坑
这里有个问题就是导出 DataBase 时会显示权限错误 Errcode: 13 - Permission denied
如果第一次导出,应该会出现Can't create/write to file这个错误,这时候,需要在Out path后面,手动添加上,需要导出的文件(例如
C:\Users\alsritter\Desktop\sql\database.sql
)
注解处理器
如果想要支持注解处理器(例如 Lombok 这类工具就需要勾上),它就是在编译前\后检查的(注解的作用就不扯了)
项目文件过滤
如果想要过滤某些文件不在项目管理目录出现,则可以设置文件过滤